package com.itluma.isWOak.mapper;

import com.itluma.isWOak.pojo.AdminInfo;
import com.itluma.isWOak.pojo.RoleInfo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface AdminInfoMapper {
    /**
     *根据条件查询所有的管理员信息（条件可以为空）
     */
    List<AdminInfo> list(@Param("moduleId") Integer moduleId, @Param("roleName") String roleName);

    /**
     * 根据管理员ID查找角色列表
     * @param aid
     * @return
     */
    List<RoleInfo> findRolesInfoByAdminId(Integer aid);

    /**
     * 根据adminId查询管理员详细信息
     * @param id
     * @return
     */
    AdminInfo findByAdminId(Integer id);

    /**
     * 根据ID重置密码
     * @param id
     * @return
     */
    Integer resetPassword(@Param("id") Integer id, @Param("password") String password);

    /**
     * 修改管理员基本信息
     * @param adminInfo
     * @return
     */
    Integer update(AdminInfo adminInfo);

    /**
     * 新增管理员用户
     * @param adminInfo
     * @return
     */
    Integer insert(AdminInfo adminInfo);

    /**
     * 根据adminId删除管理员
     * @param adminId
     * @return
     */
    Integer deleteByAdminId(Integer adminId);

    /**
     * 根据用户名查找
     * @param adminCode
     * @return
     */
    AdminInfo getByAdminCode(String adminCode);
}
